/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controle;

import java.awt.event.ActionEvent;
import java.io.IOException;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import modelo.Questionario;
import persistencia.QuestionarioFacade;
import javax.faces.context.FacesContext;

/**
 *
 * @author JCLazzarim
 */
@ManagedBean
@SessionScoped
public class MbVisualizacaoQuestionario implements Serializable{

    private Questionario quest;
    private List<Questionario> quests = null;
    private Questionario selecionado = null;
    
    @EJB
    private QuestionarioFacade ejbQuestionarioFacade;

    /**
     * Creates a new instance of MbVisualizacaoQuestionario
     */
    public MbVisualizacaoQuestionario() {
    }

    public Questionario getQuest() {
        return quest;
    }

    public void setQuest(Questionario quest) {
        this.quest = quest;
    }

    public List<Questionario> getQuests() {
        return quests;
    }

    public void setQuests(List<Questionario> quests) {
        this.quests = quests;
    }

    public Questionario getSelecionado() {
        return selecionado;
    }

    public void setSelecionado(Questionario seleciona) {
        this.selecionado = seleciona;
    }

    public String cadastro() {
        return "cadastroQuestionarios";

    }
    
    public void Exclusao() {
        if (selecionado == null) {
            FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Questionário não Selecionado.", "Por favor selecione um questionário."));
        } else {
            if (selecionado.getDatapublicacao() != null) {
                FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Questionário já publicado.", "Não possivel remover o questionario."));
            } else {
                ejbQuestionarioFacade.remove(selecionado);
            }
        }
    }
    
    public String Editar(){
		System.out.println("EDITARERERERE");
        if(selecionado == null){
            FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Questionário não Selecionado.", "Por favor selecione um questionário."));
        }else{
            if (selecionado.getAtivo()) {
                FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Questionário já publicado.", "Não possivel editar o questionario."));
            } else {
                try { 
                    FacesContext.getCurrentInstance().getExternalContext().redirect("editarQuestionario.xhtml");
                } catch (IOException ex) {
                    Logger.getLogger(MbVisualizacaoQuestionario.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        }
        return "visualizacaoQuestionario";
    }

    @PostConstruct
    public void init() {
        if (quests == null) {
            quests = new ArrayList<Questionario>();
        }
        quests = ejbQuestionarioFacade.findAll();
    }
}
